#ifndef D_VEC3F_H
#define D_VEC3F_H

namespace d_Math
{
	class d_Vec3f
	{
	public:
		float p[3];
		d_Vec3f();  //Initialize to zero everything
		d_Vec3f(float x, float y, float z); //Put values
		d_Vec3f(const d_Vec3f &v); //Copy constructor
		void normalize();
		float &operator [] (int i);
		float operator [] (int i) const;
		d_Vec3f rotateByY(float theta);
		d_Vec3f operator + (const d_Vec3f v) const;
		d_Vec3f operator - (const d_Vec3f v) const;
		d_Vec3f operator * (const float a) const;
		d_Vec3f operator / (const float a) const;
	};
}

#endif

